Как запустить симуляцию в Vivado

Симуляция — это один из видов моделирования. Моделирование используется чтобы проверки поведения разработанного устройства. Для этого, на входные сигналы подаются тестовые воздействия, а с выходных считывается результат. Параллельно этому процессу, те же самые тестовые воздействия отправляются и в эталонную модель устройства. Результат модели сверяют с результатом проектируемого устройства и, в случае расхождения, сигнализируют об ошибке.

Генерация тестовых воздействий, подача их на верифицируемое устройство и модель, сверка результатов и логирование ошибок — все это выполняется средствами верификационного окружения, которое в рамках данных лабораторных работ будет именоваться как "тестбенч". Тестбенчи — это несинтезируемые модули, поэтому они не должны находиться в папке Design Sources, вместо этого для них есть папка Simulation Sources (см. "Окно исходников проекта Vivado").

Для каждого верифицируемого модуля в репозитории есть отдельный тестбенч. Перед запуском моделирования, необходимо убедиться, что в качестве модуля верхнего уровня в папке Simulation Sources выбран тестбенч того модуля, который вы собираетесь верифицировать.

Есть несколько способов запустить симуляцию, рассмотрим два из них:

  1. На панели слева, в разделе SIMULATION, нажать Run SimulationRun Behavioral Simulation.

../.pic/Vivado%20Basics/Run%20Simulation/fig_1.png

Рисунок 1. Запуск симуляции через вкладку SIMULATION окна Flow Navigator.

  1. В иерархии проекта нажать по папке sim_1 правой кнопкой мыши, далее выбрать Run SimulationRun Behavioral Simulation.

../.pic/Vivado%20Basics/Run%20Simulation/fig_2.png

Рисунок 2. Запуск симуляции через контекстное меню папки sim_1 в Simulation Sources.

После запуска симуляции будет отмоделировано определенное количество времени, задаваемое через настройки проекта, после чего моделирование приостанавливается. Если этого времени не хватает для прохождения всех этапов симуляции (если в Tcl Console вы не видите сообщение о завершении моделирования), необходимо нажать кнопку (Run all) на панели инструментов появившегося окна SIMULATION (либо нажать горячую клавишу F3).

В случае, если вы изменили исходный код какого-то из модулей, симуляцию можно перезапустить тем же способом, которым вы запустили её в первый раз, либо нажав кнопку Relaunch Simulation.

В случае, не меняли исходный код, но хотите промоделировать модуль заново, вы можете воспользоваться кнопкой Restart (|◀). В этом случае, вы избежите повторной компиляции модулей.

Для закрытия симуляции вы можете кликнуть на крестик окна SIMULATION (бирюзовое), либо нажать правой кнопкой мыши по SIMULATION и выбрать Close Simulation.

../.pic/Vivado%20Basics/Run%20Simulation/fig_3.png

Рисунок 3. Закрытие симуляции через окно Flow Navigator.

Если вы изменили модуль верхнего уровня в Simulation Sources, вам необходимо закрыть текущую симуляцию. Без этого новая не сможет запуститься и будет выдавать ошибку "boost filesystem remove: Процесс не может получить доступ к файлу".